Many commercial databases and applications store their data in files. A database may be divided into one or more logical storage units called table spaces, and a table space may contain logical entities, such as tables and indexes. A table space may be stored in one or more physical data files. Thus, a database stores data logically in table spaces and physically in data files associated with a corresponding table space. A data file is associated with only one table space and only one database.
Table spaces may further be divided into logical units referred to as segments, which may be divided into extents. An extent is a collection of contiguous data blocks in a data file; a data block corresponds to a specific number of bytes of physical database space on disk. For tables, storage space may be allocated on demand as new rows are inserted into a table. Tables may be spread across one or more data files. Thus, a data file may include extents of multiple tables, and a table may include extents from multiple data files.
The data files are typically large in size, and portions of the files are randomly accessed. Accordingly, data stored in some portions of a data file may be subsequently accessed either infrequently or not at all, remaining relatively untouched or cold for extended periods of time or over the remaining life of the data file.
Conventional storage management and file relocation solutions use multi-tier storage systems to balance performance and costs. At higher tiers, performance is better but the cost is higher, while at lower tiers the cost is reduced but so is performance.
The amount of data being stored continues to increase at a high rate. Also, government and industry regulations may require that data be retained for longer periods of time. However, as noted above, only a fraction of the data may be accessed frequently. It is not cost-effective to store all data in high-end storage (e.g., higher tiers). Accordingly, a policy that helps allocate data amongst the different tiers and helps move data out of the highest tier would be valuable.